<template>
	<view>
		<ad-rewarded-video ref="adRewardedVideo" :url-callback="urlCallback" adpid="1167265411" :preload="false"
			:loadnext="false" :disabled="true" v-slot:default="{loading, error}" @load="onadload" @close="onadclose"
			@error="onaderror">
			<view class="ad-error" v-if="error">{{error}}</view>
		</ad-rewarded-video>
		<button type="primary" :disabled="isLoading" :loading="isLoading" @click="showAd">显示广告（组件+API）</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				isLoading: false,
				urlCallback: {
					userId: uni.getStorageSync('id'),
					extra: ''
				},
			}
		},
		onReady() {
			this.isLoading = true;
			this.$refs.adRewardedVideo.load();
		},
		onLoad(option) {
			console.log(option.id);
			this.urlCallback.extra = option.id

		},
		methods: {
			showAd() {
				if (this.isLoading) {
					return
				}
				this.$refs.adRewardedVideo.show();
			},
			onadload(e) {
				this.isLoading = false;
				console.log('广告数据加载成功');
				setTimeout(() => {
					this.showAd()
				}, 200)
			},
			onadclose(e) {
				const detail = e.detail
				// 用户点击了【关闭广告】按钮
				if (detail && detail.isEnded) {
					// 正常播放结束
					console.log("onClose " + detail.isEnded);
				} else {
					// 播放中途退出
					console.log("onClose " + detail.isEnded);

				}
				//this.isLoading = true;
				//this.$refs.adRewardedVideo.load();
				this.$p.back()
			},
			onaderror(e) {
				// 广告加载失败
				console.log(e.detail);
				this.isLoading = false;
				this.$p.back()
			}
		}
	}
</script>

<style lang="less">


</style>